<%@ page import="org.example.mad.entity.Student" %>
<%@ page import="java.util.List" %><%--
  Created by IntelliJ IDEA.
  User: csnf
  Date: 2024/12/16
  Time: 9:14
  To change this template use File | Settings | File Templates.
--%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>学生列表分页展示</title>
</head>
<body>
<h2>学生列表</h2>
<table border="1">
  <tr>
    <th>ID</th>
    <th>姓名</th>
    <th>年龄</th>
<%--    在JSP页面中，通过EL表达式和Java脚本片段获取从Servlet传递过来的学生数据列表、当前页码以--%>
<%--    及总页数等信息，然后循环展示学生数据，并根据页码情况生成上一页和下一页的导航链接。--%>
<%--    这就是一个简单的Java Web分页功能的实现示例，你可以根据实际需求进一步扩展功能，比如添--%>
<%--    加搜索功能、优化页面样式等。--%>
<%--    请注意：--%>
<%--    1. 上述代码中的数据库连接信息（如用户名、密码等）需要根据你实际的数据库配置情况进行修--%>
<%--    改。--%>
<%--    2. 代码中的类名、包名等都是示例，可以按照你的项目规范进行调整。--%>
<%--    3. 对于异常处理部分可以根据实际项目要求进一步优化，比如统一的异常处理机制等。--%>
  </tr>
  <%
    List<Student> studentList = (List<Student>)
            request.getAttribute("studentList");
    if (studentList!= null &&!studentList.isEmpty()) {
      for (Student student : studentList) {
  %>
  <tr>
    <td><%=student.getId()%></td>
    <td><%=student.getName()%></td>
    <td><%=student.getAge()%></td>
  </tr>
  <%
      }
    }
  %>
</table>
<div>
  当前第 <%=request.getAttribute("pageNum")%> 页，共
  <%=request.getAttribute("totalPages")%> 页
  <%
    int pageNum = (int) request.getAttribute("pageNum");
    if (pageNum > 1) {
  %>
  <a href="student?pageNum=<%=pageNum - 1%>">上一页</a>
  <%
    }
    if (pageNum < (int) request.getAttribute("totalPages")) {
  %>
  <a href="student?pageNum=<%=pageNum + 1%>">下一页</a>
  <%
    }
  %>
</div>
</body>
</html>
